#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>

using namespace std;

//int main()
//{
//	int n;
//	while (cin >> n, n)
//	{
//		for (int i = 0; i < n; i++)
//		{
//			for (int j = i + 1; j >= 1; j--)
//			{
//				cout << j << ' ';
//			}
//			for (int j = i + 1, k = 2; j < n; j++)
//			{
//				cout << k++ << ' ';
//			}
//			cout << endl;
//		}
//		cout << endl;
//	}
//	return 0;
//}




int main()
{
	int n;
	while (cin >> n, n)
	{
		for (int i = 0; i < n; i++)
		{
			for (int j = i + 1; j >= 1; j--)
			{
				cout << j << ' ';
			}
			for (int j = i + 2; j <= n; j++)
			{
				cout << j - i << ' ';
			}
			cout << endl;
		}
		cout << endl;
	}
	return 0;
}


//int main()
//{
//	int n;
//	while (cin >> n, n)
//	{
//		for (int i = 1; i <= n; i++)
//		{
//			for (int j = i; j >= 1; j--)
//			{
//				cout << j << ' ';
//			}
//			for (int j = i + 1; j <= n; j++)
//			{
//				cout << j - i + 1 << ' ';
//			}
//			cout << endl;
//		}
//	}
//	return 0;
//}
